package com.sr.service;

import java.util.List;
import com.sr.dao.BookDao;
import com.sr.entity.Book;

public class BookService {
	//获取servlet层的参数  实例化数据访问层对象
	private BookDao bd=new BookDao();
	
	/*
	 * 验证管理员对图书添加方法	
	 */
	public boolean addBook(Book b){
		if(!bd.isExist((b.getBookName()))){    //这个isExist方法要在dao层里面在实现一遍 验证是否存在
			bd.addBook(b);//
			return true;
		}else{
			System.out.println("此图书已存在!");
			return false;
		}	
	}
	
	/*
	 * 验证查询管理员对所有图书方法  因此方法开头是跟刀层一样
	 */
	public List<Book> findAllBook(){
		List<Book> list=bd.findAllBook();
		return list;
	}
	/*
	 * 验证管理员修改图书书名方法  因此方法开头是跟刀层一样  这个是要在servlet层调用的方法
	 */
	public boolean updateBookById(Book b) {
		if(bd.isExist(b.getbId())) {//这个修改也是通过验证id   因此要get到id
			bd.updateBookById(b);
			return true;
		}
		return false;
	}
	/*
	 * 验证管理员查询图书方法<根据id>  与上面的一起写
	 */
	public Book findBookById(int id) {
		Book b=bd.findBookById(id);
		return b;
	}

	public boolean deleteBookById(int id) {//通过id 删除 就要判断是否存在
		if(bd.isExist(id)) {
			bd.deleteBookById(id);//调用dao层方法
			return true;
		}else {
			return false;
		}		
	}
	
	/*
	 * 用户 验证图书方法 通过bookName
	 */
	public Book findBookBybookName(String bookName) {
		Book b=bd.findBookByName(bookName);
		return b;
	}
	
}
